package net.lahuobao.finance.entity.steward;

import java.math.BigDecimal;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

@Entity
@Table(name = "steward", schema = "lahuobao")
@DynamicUpdate(true)
@DynamicInsert(true)
@SuppressWarnings("serial")
public class Steward {
    private Integer organizationId;
    
    private Boolean allowManagementFee;

    private BigDecimal managementFee;

    private Boolean allowPayment;

    private Integer paymentLimit;

    private Boolean allowDaily;

    private BigDecimal dailyRate;

    private Boolean allowMonthly;

    private BigDecimal monthlyRate;

    private Boolean allowInvoice;

    private String invoiceTitle;

    private BigDecimal invoiceRate;

    private Boolean allowInsurance;

    private Boolean allowBaseInsurance;

    private BigDecimal baseInsuranceRate;

    private Boolean allowMixtureInsurance;

    private BigDecimal mixtureInsuranceRate;

    private Boolean allowUnify;

    private String contractNumber;

    private String salesman;

    private Short stewardState;

    private Boolean hasOtherFee;
    
    private Boolean allowFee;

    private BigDecimal serviceFee;
    
    private BigDecimal carrierFee;
    
    private Boolean autoInvoice;
    
    private Boolean canShunt;

    private Boolean toTransport;
    
    
	@Column(name ="to_transport",nullable=false)
    public Boolean getToTransport() {
		return toTransport;
	}

	public void setToTransport(Boolean toTransport) {
		this.toTransport = toTransport;
	}

	@Column(name ="allow_fee",nullable=false)
	public Boolean getAllowFee() {
		return allowFee;
	}

	public void setAllowFee(Boolean allowFee) {
		this.allowFee = allowFee;
	}

	@Column(name ="service_fee",nullable=false)
	public BigDecimal getServiceFee() {
		return serviceFee;
	}

	public void setServiceFee(BigDecimal serviceFee) {
		this.serviceFee = serviceFee;
	}
	@Column(name ="carrier_fee",nullable=false)
	public BigDecimal getCarrierFee() {
		return carrierFee;
	}

	public void setCarrierFee(BigDecimal carrierFee) {
		this.carrierFee = carrierFee;
	}

	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	@Column(name ="organization_id",nullable=false,precision=10,scale=0)
    public Integer getOrganizationId() {
        return organizationId;
    }

    public void setOrganizationId(Integer organizationId) {
        this.organizationId = organizationId;
    }
    
    
    @Column(name ="allow_management_fee",nullable=false)
    public Boolean getAllowManagementFee() {
        return allowManagementFee;
    }

    public void setAllowManagementFee(Boolean allowManagementFee) {
        this.allowManagementFee = allowManagementFee;
    }
    
	@Column(name ="management_fee",nullable=false,precision=6,scale=3)
    public BigDecimal getManagementFee() {
        return managementFee;
    }

    public void setManagementFee(BigDecimal managementFee) {
        this.managementFee = managementFee;
    }

	@Column(name ="allow_payment",nullable=false)
    public Boolean getAllowPayment() {
        return allowPayment;
    }

    public void setAllowPayment(Boolean allowPayment) {
        this.allowPayment = allowPayment;
    }
    
	@Column(name ="payment_limit",nullable=false)
    public Integer getPaymentLimit() {
        return paymentLimit;
    }

    public void setPaymentLimit(Integer paymentLimit) {
        this.paymentLimit = paymentLimit;
    }

	@Column(name ="allow_daily",nullable=false)
    public Boolean getAllowDaily() {
        return allowDaily;
    }

    public void setAllowDaily(Boolean allowDaily) {
        this.allowDaily = allowDaily;
    }
    
	@Column(name ="daily_rate",nullable=false)
    public BigDecimal getDailyRate() {
        return dailyRate;
    }

    public void setDailyRate(BigDecimal dailyRate) {
        this.dailyRate = dailyRate;
    }

	@Column(name ="allow_monthly",nullable=false)
    public Boolean getAllowMonthly() {
        return allowMonthly;
    }

    public void setAllowMonthly(Boolean allowMonthly) {
        this.allowMonthly = allowMonthly;
    }

	@Column(name ="monthly_rate",nullable=false)
    public BigDecimal getMonthlyRate() {
        return monthlyRate;
    }

    public void setMonthlyRate(BigDecimal monthlyRate) {
        this.monthlyRate = monthlyRate;
    }

	@Column(name ="allow_invoice",nullable=false)
    public Boolean getAllowInvoice() {
        return allowInvoice;
    }

    public void setAllowInvoice(Boolean allowInvoice) {
        this.allowInvoice = allowInvoice;
    }

	@Column(name ="invoice_title",nullable=false)
    public String getInvoiceTitle() {
        return invoiceTitle;
    }

    public void setInvoiceTitle(String invoiceTitle) {
        this.invoiceTitle = invoiceTitle == null ? null : invoiceTitle.trim();
    }
    
	@Column(name ="invoice_rate",nullable=false)
    public BigDecimal getInvoiceRate() {
        return invoiceRate;
    }

    public void setInvoiceRate(BigDecimal invoiceRate) {
        this.invoiceRate = invoiceRate;
    }

	@Column(name ="allow_insurance",nullable=false)
    public Boolean getAllowInsurance() {
        return allowInsurance;
    }

    public void setAllowInsurance(Boolean allowInsurance) {
        this.allowInsurance = allowInsurance;
    }

	@Column(name ="allow_base_insurance",nullable=false)
    public Boolean getAllowBaseInsurance() {
        return allowBaseInsurance;
    }

    public void setAllowBaseInsurance(Boolean allowBaseInsurance) {
        this.allowBaseInsurance = allowBaseInsurance;
    }
    
	@Column(name ="base_insurance_rate",nullable=false)
    public BigDecimal getBaseInsuranceRate() {
        return baseInsuranceRate;
    }

    public void setBaseInsuranceRate(BigDecimal baseInsuranceRate) {
        this.baseInsuranceRate = baseInsuranceRate;
    }

	@Column(name ="allow_mixture_insurance",nullable=false)
    public Boolean getAllowMixtureInsurance() {
        return allowMixtureInsurance;
    }

    public void setAllowMixtureInsurance(Boolean allowMixtureInsurance) {
        this.allowMixtureInsurance = allowMixtureInsurance;
    }

	@Column(name ="mixture_insurance_rate",nullable=false)
    public BigDecimal getMixtureInsuranceRate() {
        return mixtureInsuranceRate;
    }

    public void setMixtureInsuranceRate(BigDecimal mixtureInsuranceRate) {
        this.mixtureInsuranceRate = mixtureInsuranceRate;
    }
    
	@Column(name ="allow_unify",nullable=false)
    public Boolean getAllowUnify() {
        return allowUnify;
    }

    public void setAllowUnify(Boolean allowUnify) {
        this.allowUnify = allowUnify;
    }
	@Column(name ="contract_number",nullable=false)
    public String getContractNumber() {
        return contractNumber;
    }

    public void setContractNumber(String contractNumber) {
        this.contractNumber = contractNumber == null ? null : contractNumber.trim();
    }

	@Column(name ="salesman",nullable=false)
    public String getSalesman() {
        return salesman;
    }

    public void setSalesman(String salesman) {
        this.salesman = salesman == null ? null : salesman.trim();
    }
	@Column(name ="steward_state",nullable=false)
    public Short getStewardState() {
        return stewardState;
    }

    public void setStewardState(Short stewardState) {
        this.stewardState = stewardState;
    }
	@Column(name ="has_other_fee",nullable=false)
    public Boolean getHasOtherFee() {
        return hasOtherFee;
    }
    public void setHasOtherFee(Boolean hasOtherFee) {
        this.hasOtherFee = hasOtherFee;
    }
	@Column(name ="auto_invoice",nullable=false)
    public Boolean getAutoInvoice() {
        return autoInvoice;
    }
    public void setAutoInvoice(Boolean autoInvoice) {
        this.autoInvoice = autoInvoice;
    }
	@Column(name ="can_shunt",nullable=false)
	public Boolean getCanShunt() {
		return canShunt;
	}

	public void setCanShunt(Boolean canShunt) {
		this.canShunt = canShunt;
	}
	
    
  }